home *** CD-ROM | disk | FTP | other *** search
/ iBrowse Update Disc / iBrowse Update Disc.iso / distrib / man / Manuals / Omniclient / 6_filemap < prev    next >
Text File  |  1998-02-26  |  21KB  |  509 lines

  1. <HTML>
  2. <HEAD>
  3. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
  4. <TITLE> NFS file mapping</TITLE>
  5.  
  6. <META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.04z">
  7. </HEAD>
  8. <BODY BGCOLOR="#FFFFFF">
  9. <P>
  10. <A HREF="5_Internet"><IMG SRC="pics/PREV.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  11. <A HREF="Front"><IMG SRC="pics/FRONT.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  12. <A HREF="TOC"><IMG SRC="pics/CONTS.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  13. <A HREF="index"><IMG SRC="pics/INDEX.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  14. <A HREF="7_AppxA"><IMG SRC="pics/NEXT.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  15. <P>
  16. <H1>6 NFS file <A NAME="map">map</A>ping</H1>
  17. <HR>
  18. <P>
  19. There are a number of differences between the UNIX and RISC OS
  20. models of a filing system, the more important being:
  21. <UL>
  22. <LI>length of filenames
  23. <LI>use of special characters in filenames
  24. <LI>numbers of attribute bits stored with files
  25. <LI>meaning of attribute bits
  26. <LI>use of file types
  27. <LI>soft links.
  28. </UL>
  29. <P>
  30. Because of these clashes changes have to be made when mapping
  31. RISC OS file names and attributes to UNIX ones, and vice versa.
  32. Generally the changes made when mapping one way are reversed when
  33. mapping the other way, so the system is as transparent as possible
  34. if only viewed from RISC OS. If you view the files using the remote
  35. filestore though, you'll notice some differences.
  36. <P>
  37. This chapter outlines how the mapping of file names takes place,
  38. and what differences you'll notice between the RISC OS view of
  39. a file and the UNIX view. 
  40. <H2><A NAME="NFS">NFS</A> - its file mapping from RISC OS to UNIX
  41. </H2>
  42. <P>
  43. This section describes how RISC OS NFS maps files from RISC OS
  44. to UNIX.
  45. <H3>Filenames</H3>
  46. <P>
  47. <B>Character translation</B>
  48. <P>
  49. The first change RISC OS NFS makes to a filename is to translate
  50. the character `/' (the UNIX directory separator) to `.', for example:
  51. <P>
  52. <TABLE >
  53. <TR><TD WIDTH=151><B>RISC OS name</B></TD><TD WIDTH=180><B>UNIX name</B>
  54. </TD></TR>
  55. <TR><TD WIDTH=151>fred/c</TD><TD WIDTH=180>fred.c</TD></TR>
  56. <TR><TD WIDTH=151>/profile</TD><TD WIDTH=180>.profile</TD></TR>
  57. </TABLE>
  58. <P>
  59. <B>File type extensions</B>
  60. <P>
  61. RISC OS NFS then adds a filename extension to store the RISC OS
  62. file type.
  63. <P>
  64. You can set the extension used for any given file type to one
  65. of your choice. To do so you must edit the extensions file, held
  66. within the Internet application. See the section <A HREF="#extensions">Editing the extensions file</A>.
  67. <P>
  68. If you haven't set up a filename extension for a given file type,
  69. then a default extension gets used instead. The default mapping
  70. of a RISC OS file called Fred is as follows:<BR>
  71. <P>
  72. <TABLE >
  73. <TR><TD WIDTH=189><B>RISC OS type</B></TD><TD WIDTH=251><B>UNIX name</B>
  74. </TD><TD WIDTH=263><B>Notes</B></TD></TR>
  75. <TR><TD WIDTH=189>Text</TD><TD WIDTH=251>Fred</TD><TD WIDTH=263>
  76. </TD></TR>
  77. <TR><TD WIDTH=189>UNIX Ex</TD><TD WIDTH=251>Fred</TD><TD WIDTH=263>
  78. </TD></TR>
  79. <TR><TD WIDTH=189>Draw (&AFF)</TD><TD WIDTH=251>Fred,aff</TD>
  80. <TD WIDTH=263></TD></TR>
  81. <TR><TD WIDTH=189>Obey (&FEB)</TD><TD WIDTH=251>Fred,feb</TD>
  82. <TD WIDTH=263>and other file types similarly…</TD></TR>
  83. <TR><TD WIDTH=189>dead †</TD><TD WIDTH=251>Fred,xxx</TD>
  84. <TD WIDTH=263></TD></TR>
  85. <TR><TD WIDTH=189>untyped</TD><TD WIDTH=251>Fred,lxa</TD><TD WIDTH=263>
  86. </TD></TR>
  87. <TR><TD WIDTH=189>directory</TD><TD WIDTH=251>Fred</TD><TD WIDTH=263>
  88. </TD></TR>
  89. </TABLE>
  90. <P>
  91. † A dead file is one that has been created but the contents
  92. of which are being updated. For example when NetFS copies a file
  93. to a file server it reserves space by creating a dead file before
  94. writing to it.
  95. <H3>File contents</H3>
  96. <P>
  97. The contents of files are unchanged when transferring to UNIX,
  98. save for untyped files. These have their load and execute addresses
  99. appended to the file, making it 8 bytes longer:
  100. <P>
  101. <TABLE BORDER="1">
  102. <TR><TD WIDTH=243><CENTER>…normal contents</CENTER></TD>
  103. <TD WIDTH=43><CENTER>L0</CENTER></TD><TD WIDTH=43><CENTER>L1</CENTER>
  104. </TD><TD WIDTH=43><CENTER>L2</CENTER></TD><TD WIDTH=43><CENTER>L3</CENTER>
  105. </TD><TD WIDTH=43><CENTER>E0</CENTER></TD><TD WIDTH=43><CENTER>E1</CENTER>
  106. </TD><TD WIDTH=43><CENTER>E2</CENTER></TD><TD WIDTH=43><CENTER>E3</CENTER>
  107. </TD></TR>
  108. </TABLE>
  109. <P>
  110. The RISC OS file ended before L0, while the UNIX file ended after
  111. E3
  112. <P>
  113. L0 is the least significant byte of the load address, L3 the most
  114. significant. Bytes E0 to E3 are the execute address.
  115. <H3><A NAME="Access">Access</A> attributes</H3>
  116. <P>
  117. <B>When creating a new file or directory</B>
  118. <P>
  119. You can use the system variable NFS$<A NAME="Create">Create</A>Access
  120. to define the default read/write access attributes for user, group
  121. and other that RISC OS NFS sets when creating a file or directory
  122. on UNIX. This variable uses six of its lowest nine bits:
  123. <P>
  124. <TABLE BORDER="1">
  125. <TR><TD COLSPAN=3 WIDTH=198><CENTER><B>User</B></CENTER></TD>
  126. <TD COLSPAN=3 WIDTH=198><CENTER><B>Group</B></CENTER></TD><TD COLSPAN=3 WIDTH=198><CENTER><B>Other</B></CENTER>
  127. </TD></TR>
  128. <TR><TD WIDTH=66><CENTER>r</CENTER></TD><TD WIDTH=66><CENTER>w</CENTER>
  129. </TD><TD WIDTH=66><CENTER>-</CENTER></TD><TD WIDTH=66><CENTER>r</CENTER>
  130. </TD><TD WIDTH=66><CENTER>w</CENTER></TD><TD WIDTH=66><CENTER>-</CENTER>
  131. </TD><TD WIDTH=66><CENTER>r</CENTER></TD><TD WIDTH=66><CENTER>w</CENTER>
  132. </TD><TD WIDTH=66><CENTER>-</CENTER></TD></TR>
  133. </TABLE>
  134. <P>
  135. You can set it in octal by using a leading `0' (you'll find this
  136. familiar if you've ever used the UNIX chmod command with numbers),
  137. or in hexadecimal by using a leading `0x', or in decimal by just
  138. using a number. So the following would all set the variable to
  139. specify user read/write access, group read only access, and no
  140. access to others:
  141. <P>
  142. <TT><FONT FACE="Courier">*Set NFS$CreateAccess 0640 </FONT>(using
  143. octal)</TT> 
  144. <P>
  145. <TT><FONT FACE="Courier">*Set NFS$CreateAccess 0x1A0 </FONT>(using
  146. hexadecimal)</TT> 
  147. <P>
  148. <TT><FONT FACE="Courier">*Set NFS$CreateAccess 416 </FONT>(using
  149. decimal)</TT> 
  150. <P>
  151. You can override the value of the NFS$CreateAccess variable for
  152. a specific mount by setting a system variable <TT><FONT FACE="Courier">NFS$CreateAccess_mountname</FONT></TT> .
  153. <P>
  154. You should set these access variables in a boot file; see your
  155. RISC OS 3 User Guide if you need help on this.
  156. <P>
  157. If a relevant access variable exists then files and directories
  158. are created with the read/write access it specifies. Files of
  159. type UNIX Ex also have their execute attributes set to be the
  160. same as the corresponding read bits in the variable.
  161. <P>
  162. If no relevant access variable exists then files are created with
  163. user read/write access, and with user execute permission if the
  164. files' type is UNIX Ex. Directories are created with user read,
  165. write and execute permission.
  166. <P>
  167. <B>When mapped from RISC OS</B>
  168. <P>
  169. When RISC OS NFS sets the access to a UNIX file using RISC OS
  170. attributes they are mapped as follows: 
  171. <P>
  172. <TABLE >
  173. <TR><TD WIDTH=161><B>RISC OS bit</B></TD><TD WIDTH=409><B>UNIX bit</B>
  174. </TD></TR>
  175. <TR><TD WIDTH=161>owner read</TD><TD WIDTH=409>user read <BR>
  176. user execute is also set if owner read is set and the file's type is UNIX Ex
  177. </TD></TR>
  178. <TR><TD WIDTH=161>owner write</TD><TD WIDTH=409>user write</TD>
  179. </TR>
  180. <TR><TD WIDTH=161>public read</TD><TD WIDTH=409>group read and other read <BR>
  181. group execute and other execute are also both set if public read is set and the file's type is UNIX Ex.
  182. </TD></TR>
  183. <TR><TD WIDTH=161>public write</TD><TD WIDTH=409>group write and other write
  184. </TD></TR>
  185. <TR><TD WIDTH=161>locked</TD><TD WIDTH=409>(discarded)</TD></TR>
  186. </TABLE>
  187. <P>
  188. <BR>
  189. <P>
  190. Similarly, when RISC OS NFS sets the access to a UNIX directory
  191. using RISC OS attributes they are mapped as follows:
  192. <P>
  193. <TABLE >
  194. <TR><TD WIDTH=161><B>RISC OS bit</B></TD><TD WIDTH=408><B>UNIX bit</B>
  195. </TD></TR>
  196. <TR><TD WIDTH=161>owner read</TD><TD WIDTH=408>ignored - i.e. user read is left unchanged
  197. </TD></TR>
  198. <TR><TD WIDTH=161>owner write</TD><TD WIDTH=408>ignored - i.e. user write is left unchanged <BR>
  199. user execute is always set
  200. </TD></TR>
  201. <TR><TD WIDTH=161>public read</TD><TD WIDTH=408>group read and other read
  202. </TD></TR>
  203. <TR><TD WIDTH=161>public write</TD><TD WIDTH=408>group write and other read
  204. </TD></TR>
  205. <TR><TD WIDTH=161>locked</TD><TD WIDTH=408>NOT group execute and NOT other execute
  206. </TD></TR>
  207. </TABLE>
  208. <H3><A NAME="Dates">Dates</A></H3>
  209. <P>
  210. UNIX date stamps any files just as usual if you use RISC OS NFS
  211. to create or amend them.
  212. <H3><A NAME="Find">Find</A>ing an object</H3>
  213. <P>
  214. When RISC OS NFS is finding an object it searches in this order,
  215. using the first match it makes:
  216. <OL>
  217. <LI>It searches for an exact name match.
  218. <LI>It searches for an exact name match after any RISC OS specific
  219. extension has first been removed.
  220. <LI>It searches for a name match ignoring case, after any RISC
  221. OS specific extension has first been removed.
  222. </OL>
  223. <H2>NFS - its file mapping from <A NAME="UNIX">UNIX</A> to RISC
  224. OS</H2>
  225. <P>
  226. This section describes how RISC OS NFS maps files from UNIX to
  227. RISC OS.
  228. <H3>Filenames</H3>
  229. <P>
  230. <B>File type <A NAME="untyped"><B>extensions</B></A></B>
  231. <P>
  232. The first change RISC OS NFS makes is to remove any filename extension
  233. used to store the RISC OS file type.
  234. <P>
  235. It starts by looking through the extensions file to see if the
  236. filename has an extension that matches one you specified; if so,
  237. the extension gets removed. You can in fact set up a different
  238. mapping for each direction of file transfer, so you can map many
  239. UNIX file extensions to single RISC OS file types. See the section
  240. <A HREF="#extensions">Editing the extensions file</A>.
  241. <P>
  242. If RISC OS NFS can't find a matching filename extension in the
  243. extensions file it then tries to remove any of its own default
  244. extensions; so the following all appear as Fred under RISC OS:
  245. <P>
  246. <TABLE >
  247. <TR><TD WIDTH=161><B>UNIX name</B></TD><TD WIDTH=408><B>Notes</B>
  248. </TD></TR>
  249. <TR><TD WIDTH=161>Fred</TD><TD WIDTH=408></TD></TR>
  250. <TR><TD WIDTH=161>Fred,hhh</TD><TD WIDTH=408>hhh is 3 lower-case hex digits
  251. </TD></TR>
  252. <TR><TD WIDTH=161>Fred,xxx</TD><TD WIDTH=408></TD></TR>
  253. <TR><TD WIDTH=161>Fred,lxa</TD><TD WIDTH=408></TD></TR>
  254. </TABLE>
  255. <P>
  256. <B>Truncation</B>
  257. <P>
  258. The next thing RISC OS NFS does to a filename is to truncate it
  259. to the length set by the system variable NFS$<A NAME="Trun">Trun</A>cateLength.
  260. By default this is set to the value 10 - the same length as the
  261. maximum that the desktop Filers can handle. It only gets read
  262. once, when the NFS module is loaded.
  263. <P>
  264. If you want a different truncate length use the *Set command,
  265. say in a boot file:
  266. <P>
  267. <TT><FONT FACE="Courier">*Set NFS$TruncateLength 12</FONT></TT> 
  268. <P>
  269. If you're using NFS from the command line you may want to override
  270. filename truncation. To do so set the variable to a large number,
  271. e.g. 1000000.
  272. <H3>Character translation</H3>
  273. <P>
  274. The final change RISC OS NFS makes to a filename is to translate
  275. the character `.' (the Acorn directory separator) to `/', for
  276. example:
  277. <P>
  278. <TABLE >
  279. <TR><TD WIDTH=161><B>UNIX name</B></TD><TD WIDTH=408><B>RISC OS name</B>
  280. </TD></TR>
  281. <TR><TD WIDTH=161>fred.c</TD><TD WIDTH=408>fred/c</TD></TR>
  282. <TR><TD WIDTH=161>.profile</TD><TD WIDTH=408>/profile</TD></TR>
  283. </TABLE>
  284. <H3>File <A NAME="contents">contents</A></H3>
  285. <P>
  286. RISC OS NFS makes the last 8 bytes of any file with a `,lxa' extension
  287. invisible; this is to hide the load and execute addresses it presumes
  288. itself to have appended.
  289. <P>
  290. If you generate a file in UNIX with a `,lxa' extension which is
  291. less than 8 bytes long, you will get unpredictable behaviour if
  292. you try to manipulate it from RISC OS.
  293. <H3>Access attributes</H3>
  294. <P>
  295. When the access attributes of a UNIX file or directory get translated
  296. by RISC OS NFS they are mapped as follows:
  297. <P>
  298. <TABLE >
  299. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161><B>UNIX bit</B></TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408><B>RISC OS bit</B>
  300. </TD></TR>
  301. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>user read</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>owner read
  302. </TD></TR>
  303. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>user write</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>owner write
  304. </TD></TR>
  305. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>user execute</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>(discarded)
  306. </TD></TR>
  307. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>group read</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>(discarded)
  308. </TD></TR>
  309. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>group write</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>(discarded)
  310. </TD></TR>
  311. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>group execute</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>(discarded)
  312. </TD></TR>
  313. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>other read</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>public read
  314. </TD></TR>
  315. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>other write</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>public write
  316. </TD></TR>
  317. <TR><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=161>other execute</TD><TD ALIGN="LEFT" VALIGN="TOP" WIDTH=408>(discarded for files) 
  318. <BR>
  319. NOT locked for directories
  320. </TD></TR>
  321. </TABLE>
  322. <H3>Dates</H3>
  323. <P>
  324. RISC OS NFS always uses the UNIX last modified date stamp to map
  325. to a RISC OS date stamp. It assumes the UNIX date stamp to be
  326. in GMT, and uses the value set by *TimeOffset to convert this
  327. to local time. See <A HREF="8_AppxB#time">*TimeOffset</A>.
  328. <H3>File <A NAME="types">types</A></H3>
  329. <P>
  330. RISC OS NFS resolves file types by looking for any filename extension
  331. used to store the RISC OS file type. It does so at the same time
  332. as it resolves filenames - see also the earlier <A HREF="#filenames">Filenames </A>section.
  333. <P>
  334. It starts by looking through the extensions file to see if the
  335. filename has an extension that matches one you specified; if so,
  336. it sets the file to the corresponding file type. See the section
  337. <A HREF="#extensions">Editing the extensions file</A>.
  338. <P>
  339. If RISC OS NFS can't find a matching filename extension in the
  340. extensions file it then sets the file type using its default file
  341. extensions. So, again taking the example of a file that will be
  342. displayed as Fred:<BR>
  343. <P>
  344. <TABLE >
  345. <TR><TD WIDTH=151><B>UNIX name</B></TD><TD WIDTH=236><B>Notes</B>
  346. </TD><TD WIDTH=171><B>RISC OS type</B></TD></TR>
  347. <TR><TD WIDTH=151>Fred</TD><TD WIDTH=236>UNIX directory</TD><TD WIDTH=171>Directory
  348. </TD></TR>
  349. <TR><TD WIDTH=151>Fred</TD><TD WIDTH=236>no execute bit is set
  350. </TD><TD WIDTH=171>Text</TD></TR>
  351. <TR><TD WIDTH=151>Fred</TD><TD WIDTH=236>any execute bit is set
  352. </TD><TD WIDTH=171>UNIX Ex</TD></TR>
  353. <TR><TD WIDTH=151>Fred,hhh</TD><TD WIDTH=236>hhh is 3 lower case hex digits
  354. </TD><TD WIDTH=171>&hhh</TD></TR>
  355. <TR><TD WIDTH=151>Fred,xxx</TD><TD WIDTH=236></TD><TD WIDTH=171><A NAME="dead">dead</A>
  356. </TD></TR>
  357. <TR><TD WIDTH=151>Fred,lxa</TD><TD WIDTH=236></TD><TD WIDTH=171>none, undated
  358. </TD></TR>
  359. </TABLE>
  360. <P>
  361. See also the section <A HREF="#soft">Soft links</A>.
  362. <H3>Load and execute addresses</H3>
  363. <P>
  364. If a UNIX file has the extension `,lxa' then RISC OS NFS assumes
  365. it to be a RISC OS untyped file that it created on UNIX. It uses
  366. the last 8 bytes of the file to give the load and execute addresses.
  367. So if they were:
  368. <P>
  369. <TABLE BORDER=1>
  370. <TR><TD WIDTH=243><CENTER>…normal contents</CENTER></TD>
  371. <TD WIDTH=43><CENTER>67</CENTER></TD><TD WIDTH=43><CENTER>45</CENTER>
  372. </TD><TD WIDTH=43><CENTER>23</CENTER></TD><TD WIDTH=43><CENTER>01</CENTER>
  373. </TD><TD WIDTH=43><CENTER>EF</CENTER></TD><TD WIDTH=43><CENTER>CD</CENTER>
  374. </TD><TD WIDTH=43><CENTER>AB</CENTER></TD><TD WIDTH=43><CENTER>89</CENTER>
  375. </TD></TR>
  376. </TABLE>
  377. <P>
  378. (The RISC OS file ends before 67, while the UNIX file ends after
  379. 89.)
  380. <P>
  381. the load address would be &01234567, and the execute address
  382. would be &89ABCDEF.
  383. <H3><A NAME="soft">Soft</A> links</H3>
  384. <P>
  385. RISC OS NFS resolves soft links up to eight times
  386. - that is, whilst following a soft link, it only allows eight
  387. soft links to be traversed. If this traversal reaches an existing
  388. object other than a soft link:
  389. <UL>
  390. <LI>the object's UNIX attributes and contents get used
  391. <LI>the soft link's UNIX name gets used to determine the RISC
  392. OS file type.
  393. </UL>
  394. <P>
  395. In other words soft links behave transparently except that, where
  396. there is more than one soft link to a file, its type may differ
  397. depending on which soft link you use to view it.
  398. <P>
  399. RISC OS NFS can't traverse a soft link that leaves a mount. If
  400. a UNIX link name starts with the character `/' then RISC OS NFS
  401. treats it as the root of its mount. Consequently absolute soft
  402. links will only work if you've mounted the UNIX root directory
  403. `/' and if the soft link does not leave the root filing system.
  404. For example, if you had mounted /usr then this UNIX soft link
  405. in the /usr directory would be traversed:
  406. <P>
  407. <TT><FONT FACE="Courier">lrwxrwxrwx 1 root wheel 11 Feb 23 17:19
  408. man -> ./share/man</FONT></TT> 
  409. <P>
  410. whereas this one wouldn't be:
  411. <P>
  412. <TT><FONT FACE="Courier">lrwxrwxrwx 1 root wheel 11 Feb 23 17:19
  413. man -> /usr/share/man</FONT></TT> 
  414. <P>
  415. We advise that when you make soft links on UNIX you always make
  416. relative links (i.e. start them with `.' or `..') rather than
  417. absolute ones.
  418. <P>
  419. If a soft link does not resolve to an existing non-soft-link object
  420. within eight expansions it's displayed as a file with type `SoftLink'
  421. (&FDC). You can't do anything from RISC OS with one of these
  422. dead soft links.
  423. <H3>Other object types</H3>
  424. <P>
  425. Block and character special files and named sockets are displayed
  426. as UNIX Ex files. Fiddle with these from RISC OS at your peril!
  427. <H2>Editing the <A NAME="extensions">extensions</A> file</H2>
  428. <P>
  429. The <TT><FONT FACE="Courier">extensions</FONT></TT>  file is held
  430. in the <TT><FONT FACE="Courier">files</FONT></TT>  subdirectory
  431. of the Internet application, and configures the mapping of RISC
  432. OS file types to UNIX filename extensions. To add your own filename
  433. extensions for specific RISC OS file types you need to edit this
  434. file:
  435. <OL>
  436. <LI>Load Edit onto the icon bar - if it's not already loaded.
  437. <LI>Open the directory display containing the <TT><FONT FACE="Courier">!Internet</FONT></TT> 
  438. application - if it's not already open.
  439. <LI>Open the<TT><FONT FACE="Courier"> !Internet</FONT></TT>  application
  440. directory by holding down the Shift key while you double-click
  441. on the<TT><FONT FACE="Courier"> !Internet</FONT></TT>  icon.
  442. <LI>Open the <TT><FONT FACE="Courier">files</FONT></TT>  directory.
  443. <LI>Load it into Edit by dragging its icon to the Edit icon on
  444. the icon bar.
  445. <LI>Add to the file your own mappings of file type to UNIX file
  446. extension.
  447. </OL>
  448. <UL>
  449. <LI>There are two sets of mappings: one for files coming from
  450. RISC OS (starting immediately beneath the `From extensions:' line),
  451. another for files returning to RISC OS (starting immediately beneath
  452. the `To extensions:' line).
  453. <LI>The general syntax is:
  454. </UL>
  455. <P>
  456. <TT><I><FONT /TT>  FACE="Courier">RISC_OS_file_type new_extension
  457. [anything]</FONT></I></TT> 
  458. <P>
  459. The RISC OS file type can be the name of a file type, or its file
  460. type number in hexadecimal. So to give Data files (type &FFD)
  461. the extension `.dat' you could use either of these lines:
  462. <P>
  463. <TT><FONT FACE="Courier">Data .dat</FONT></TT> 
  464. <P>
  465. <TT><FONT FACE="Courier">ffd .dat</FONT></TT> 
  466. <UL>
  467. <LI>If you add a third field (`<TT><I><FONT /TT>  FACE="Courier">anything</FONT></I></TT> '
  468. above) then the extension becomes `sticky'.
  469. </UL>
  470. <P>
  471. When moving to UNIX the extension is only added if it's not already
  472. present. So if the line were to read:
  473. <P>
  474. <TT><FONT FACE="Courier">ffd .dat sticky</FONT></TT> 
  475. <P>
  476. the Data file output would be renamed <TT><FONT FACE="Courier">output.dat</FONT></TT> ,
  477. whereas the Data file <TT><FONT FACE="Courier">output.dat</FONT></TT> 
  478. would not be renamed.
  479. <P>
  480. When returning from UNIX the extension doesn't get removed; otherwise
  481. it's handled the same as ever, so the file type gets set using
  482. this extension.
  483. <P>
  484. We expect you'll want the `To extensions:' part to duplicate the
  485. entries in the `From extensions' part, so any extension that gets
  486. added when a file is transferred to UNIX gets removed again if
  487. the file returns to RISC OS. However, there may be a lot of UNIX
  488. extensions that you wish to convert to a single RISC OS file type.
  489. For example, you may have several UNIX applications each of which
  490. generates text files with different extensions - say `.txt', `.doc'
  491. and `-asc'. To do so, just add extra entries to the `To extensions',
  492. thus:
  493. <P>
  494. <TT><FONT FACE="Courier">Text .txt<BR>
  495. Text .doc<BR>
  496. Text -asc</FONT></TT> 
  497. <P>
  498. When you've added all the extensions you want to, save the edited
  499. extensions file, overwriting the old one.
  500. <P>
  501. <A HREF="5_Internet"><IMG SRC="pics/PREV.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  502. <A HREF="Front"><IMG SRC="pics/FRONT.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  503. <A HREF="TOC"><IMG SRC="pics/CONTS.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  504. <A HREF="index"><IMG SRC="pics/INDEX.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  505. <A HREF="7_AppxA"><IMG SRC="pics/NEXT.GIF" HEIGHT="28" WIDTH="96" BORDER="0"></A>
  506. <P>
  507. </BODY>
  508. </HTML>
  509.